Efficient communication through networks

ABSTRACT

A method and device that interrogates the availability of a called party before placing a communication from the calling party to the called party. A callback may be initiated so that both communications are completed simultaneously. The routing of communication may take place through any one of a number of different networks and at another time of the day, even if the caller does not otherwise have access to those networks.

CROSS-REFERENCE TO COPENDING PATENT APPLICATIONS

This is a continuation-in-part of U.S. patent application Ser. No.08/320,269, filed Oct. 11, 1994, now abandoned.

FIELD OF THE INVENTION

The present invention relates to a system for providing transparentaccess to different types of communication networks that may beincompatible with each other and some of which may be incompatible withthe equipment used by the calling party or the called party, least costrouting in such a system, maintaining quality of communication in such asystem, prioritizing the routing of such communications, evaluatingdifferent communication access locations to determine where to send acommunication, synchronizing communications, blocking incomingcommunications while waiting for the synchronizing to be completed, andminimizing the cost of communications using such a system. This systemalso monitors and records the services used on each of the unrelatedservice providers. This information is then utilized for billingpurposes and for paying the service providers.

BACKGROUND OF THE INVENTION

Presently when communication services are offered on a global basis,communications are established through the equipment of a plurality ofservice providers located in various countries. This communication isdominated by large carriers which have formed the global network throughreciprocal agreements. Smaller competing carriers, who may offer thesame service at lower prices, currently do not have reciprocalagreements between them.

The invention provides these smaller competing carriers with access toeach other without the use of the large carriers. Such access providesthe calling party (e.g., a subscriber of the smaller competing carrier)with the option of obtaining optimum service at lower prices whileensuring that the appropriate service providers get paid. The callingparty can now have cheaper access to different types oftelecommunication networks that the party may not have access to underthe current large carrier system. It may be cheaper or preferred for thecalling party to use smaller carriers to communicate with anotherlocation by routing the communication over a digital data network ratherthan an analog voice network, or by routing the communication over apaging network rather than a cellular network or a combination ofnetworks.

SUMMARY OF THE INVENTION

One objective of the invention is to provide communication betweenotherwise incompatible communication networks in a manner that istransparent to the calling party (that is, the subscriber of the serviceinitiating the communication), while assuring that each service providerthat renders service in routing that communication gets paid.Preferably, the communication is routed based on the results from anevaluation of all available communication networks even though thecalling party may have direct access to only one type of communicationnetwork.

In accordance with the invention, control information in the form of aninquiry of the availability status of the party to be called may be sentthrough different networks by routing it through a control location ofthe inventive system that converts it into a compatible form. Forinstance, the called party may be using one type of network, such as adata network having E-mail, while the calling party is using another,such as a cellular network.

With a conventional data network, sending an E-mail message to anaddress on the data network does not indicate the availability of aparty on a cellular network to communicate. In accordance with oneembodiment of the invention, however, the control location of theinventive system is connected with both the data network and thecellular network to convert the control information associated withE-mail into a form compatible on the cellular network for making aninquiry and then transmits the inquiry over the cellular network.

The inventive system may have external or internal software and hardwarethat intercepts the normal transmission to route it appropriately. Thesystem effects further routing, which may include converting betweendifferent forms of communication networks, compressing voice into datapackets or decompressing data packets into voice, coding and decodingtransmissions for security reasons, and multiplexing communications overthe same lines. The system records the various routing transactionsinvolved in the communication and calculates the billing of thetransactions in a manner that is transparent to the calling party.

Another objective of the invention is to interrogate the called partynumber's communication availability prior to conferencing the callingparty and called party. The inventive system may have a control locationthat receives both a calling party and a called party access number oridentification. After receiving these access numbers, the systeminitiates an inquiry to the called party from the control location andwaits for a status signal as to the called party location's availabilityto take incoming calls. If the status signal indicates an availablestatus, a first communication is initiated to the called party accessnumber from the control location and a second communication is initiatedto the calling party access number from the control location.Thereafter, the first and second communications are bridged using thesame or different networks.

In addition to interrogating the called party's availability status, thecontrol location determines where to route the call by examining factorssuch as transmission cost, the appropriate network for the desiredtransmission, the service provider that provides this kind of networkand the plurality of available called party locations that service thecalled party access number. The control location also considerscommunication networks that are available to the called party locationsand the identity of service providers who provide those communicationnetworks across the various called party locations. After receiving thecalling party and called party access numbers, the control locationperforms an inquiry as to which service provider and which network canroute the transmission.

In addition to technological considerations, the control location alsostudies the various cost to perform the desired transmission and recordssuch information for both monitoring and billing purposes. An authorizeruses such information to monitor all incoming and outgoing transactionsbetween the network service providers and provide clearance insuringpayment and settlement of all transaction for each of these operators.

In routing communications, the control location takes into considerationcustomer defined preference criteria relating to preferences forparticular types of communication network, transmission quality, cost,security, and priority of transmission. For example, if the quality of atransmission is not acceptable, the transmissions may be rerouted to anyother available network that can transmit with better quality, therebyensuring that the quality of the transmission satisfies the customer'spreference criteria for transmission quality. The calling party accessnumber itself may include a message or protocol containing preferencecriteria selections.

Another objective of the invention involves synchronizing the completionof callback from the control location to the calling party and calledparty legs of communication. The synchronization involves thecalculation of the waiting time that is necessary before the controllocation commences each callback. The waiting time may be fixed or readfrom memory off a data base located at the control location. Thissynchronization may result in completion of both communicationssimultaneously or with minimal delay, i.e., a significantly shorterdelay than without the synchronization. Such synchronization results inmore efficient use of the network at a lower cost.

While the control location is waiting to initiate completion of one ofthe callback legs of communication, an incoming communication may blockthe completion of that one leg and thereby interrupt the synchronizationfrom taking place. The blocking period may be for a fixed time period ormay be based on information in a data base that includes informationrelating to the expected waiting time for completing communications.

In accordance with all embodiments of the invention, the communicationbeing established may be two-way.

BRIEF DESCRIPTION OF THE DRAWING

For a better understanding of the present invention, reference is madeto the following description and accompanying drawing, while the scopeof the invention is set forth in the appended claims.

FIG. 1 is a conceptual block diagram indicating the principles ofoperation of the inventive method to interrogate over a data network andtransmit voice over the data network.

FIG. 2 is a schematic diagram of a system overview having two servers atnodes connected to an Internet backbone.

FIG. 3 is a schematic diagram of a telephony server.

FIG. 4 is a functional block diagram of the embodiment of FIG. 2.

FIG. 5 is a schematic diagram of a flow chart showing routing forversatility and priority of transmission.

FIG. 6 is a schematic diagram of a flow chart showing synchronizingconnection.

FIGS. 7A-7G are schematic diagrams showing different types ofcommunication routing techniques.

FIG. 8 is a schematic representation of a central local node interactingwith networks in accordance with the invention.

FIG. 9 is a conceptual block diagram that is a further variation of thatof FIG. 1.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Turning to FIG. 1, a schematic drawing depicting a method of sending avoice or digital transmission to a local node is shown. For ease inunderstanding, this drawing is the same as FIG. 1 of the copending U.S.patent application Ser. No. 08/320,269 (the '269 application), filedOct. 11, 1994 by the present inventor and entitled METHOD OF AND SYSTEMFOR EFFICIENT USE OF TELECOMMUNICATION NETWORKS (as amended), whosecontents are incorporated herein by reference.

The '269 application describes a technique by which hotels, and othersimilarly situated establishments, can make use of internationalcallback technology. The reference numbers in FIG. 1 of the '269application are the same as those in FIG. 1 of the present application,i.e., a telecommunications network 10, calling location 12, calledlocation 14, transparent telecommunications node or intercept 16, firstcentral local node 18, data network 20, central office 22, secondcentral local node 24, phonecall 26, link 28 to central local node 18,link 30 to the external channel 20, link 32 to the second central localnode 24, line 36 over which a first phonecall 27 is made to interrogatethe called location 14 and over which is sent back a call supervisionstatus signal 38, a callback 40, an uncompleted call signal 42, amessage 44, a reverse answer supervision signal 47 and a callinglocation 48 that places a call 50A or receives a callback 52A.

The calling location 12 may be where a data transmission originates orwhere a voice communication originates for eventual receipt by thecalling location 14. While phonecalls are certainly one form ofcommunication envisioned, the invention covers any type ofcommunication, whether it involves public service telephone networks,cellular networks, paging networks, data networks, analog networks, etc.A call is to be interpreted as any form of communication over a networkand not limited just to voice phonecalls.

While such a technique is particularly suited to callback situationsthat employ a voice network, it is also applicable to employing digitaldata based networks such as the internet computer network. For instance,instead of routing a call direct between locations A and B usingtechnology X, it may be cheaper to use callbacks from location C tolocation A and from location C to location B using technology Y.

As used in this application, the term “calling party” designates theinitiator of the transmission or communication, which may includecallers over phone networks, subscribers that use data, cellular orpaging networks, etc. The term “called party” designates the ultimatereceiver of the transmission or communication from the calling party andwith whom communication is being effected. The called party may includeusers of phone networks, cellular networks, paging networks, datanetworks, etc. whose access device on the network serve as thedestination to which the transmission or communication is directed fromthe calling party.

In addition to transmitting voice through the telecommunication network10, the voice may be converted into digital form in a conventionalmanner, e.g., compressed into data packets or sampled. At the firstcentral local node 18, the call from the calling location 12 isconverted to a data signal which is then sent over a data network suchas the data network 20 to the called location or destination 14. Priorto reaching the called party, the data signal is reconverted into voiceat the central office 22 (or control location) to be transmitted to thedestination 14 via a public communications network or other connectionline 36. Such a transaction bypasses the use of the internationaltelephone networks and utilizes local calls instead. All internodeconnections are via the data network.

In addition, by transmitting voice over a data network, the need forcallback over a telephone network to save costs is obviated. Since datatransmissions are virtually instantaneous, the costs associated with thewaiting times for transmitting voice over conventional phone networks isavoided and even the costs associated with waiting times for makingconnection in a callback over a conventional phone network are avoided.

Each node is capable of communicating with other nodes for purposes ofrouting the communication and act as a transit node, making inquiries todetermine availability of the party at the destination to receive thecommunication, and even tracking down which network the party ispresently accessing so that the communication may be routed there. Forinstance, a node at the called party may be preprogrammed with alldifferent forms of communication networks and contact identificationsthat the party may be accessing, together with their addresses, accessnumbers, or other types of identification information to access themfrom the node.

Upon receipt of a request inquiring as to the availability of the partyto receive a communication, the node at the called party having the mainidentification or number associated with the called party checks thestatus of each of these communication networks at different accesslocations to determine whether any are being accessed by the party atthat time. In this connection, the called party would have previouslydesignated the main identifications (addresses, etc.) or phone numberswhere it wants to be reached and what networks are to be employed.

For instance, the check may reveal that the called party's computer islogged in or that the phone is hooked up, etc. If so, then the node hasidentified where the party may be accessed and then contacts theinquiring node to forward an authorization code for billing creditpurposes so that the called party node may effect communication throughthis identified communication network. The authorization code limits theduration and services that may be provided. Alternatively, the systemmay send the authorization code together with the inquiry.

The node that made the inquiry request sends the authorization codeafter checking in with a central node responsible for clearing alltransactions and which registers every event on the network. The centralnode may be part of a distributed network of central nodes that areresponsible for billing . After the called party node receives theauthorization code and authenticates it for billing purposes,communication may be established to the party through the identifiedcommunication network that was tracked down and found to be accessibleall transparent to the end user. An appropriate signal is transmitted tothe requesting node that communication may commence between the parties.

An example of tracking down the called party will now be described.Assume that the party spends half the year in North America using NACNcellular network and the remainder in Europe using GSM internet networkhookup using Laptop computer. Under normal situations, these two formsof networks are not compatible so direct communication is not possible.However, in accordance with the invention, such a situation is rectifiedby communicating with a node that is programmed with information as towhich of the possible networks the party may be using. If the node is incontact with the NACN system, it is also in contact with a node that isin contact with the GSM system. Both nodes check their respectivecellular systems to locate on which the party is or has been accessingor which has been turned off. Once the accessible location isidentified, contact can be made from regular telephone to the laptopconverting and routing the voice over data to the laptop on which it isconverted back into voice.

As an example of operation, the subscriber of the service provider firstcontacts a central local node by providing the calling party's identityaccess number or identification and the called party access number oridentification, as well as the type of service desired as concernsrouting preferences, service providers, level of transmission quality,timing of transmission, etc.

The central local node polls the called party nodes to locate thenetwork which the called party is accessing. For instance, one calledparty node may be programmed with access information on all the possiblenetworks that the called party may be using, e.g., cellular, computer,paging, etc. This called party node then searches to find where thecalled party is or is likely to be and then informs the central localnode that the communication may be sent to it upon receipt of anauthorization number for the transaction.

The central local node provides such authorization, perhaps afterchecking with the central node first that handles billing anddetermining that the calling party or service providers satisfyfinancial conditions for permitting service and future settlement. Ifthe central local nodes do a least cost routing analysis, for instance,and determine that a callback from the called party is the cheaper wayto complete the transaction and both the calling party's serviceprovider and called party's service provider has received authorization,then the originating service provider will be billed. The central noderecords all such transactions for billing purposes.

One application of the invention that allows the Internet or other datanetwork to function like a telephone and fax machine will now beexplained. Callers are allowed to dial anywhere in the world for theprice of a local access and service fee and avoid using long distancecarriers. Users may make such calls to have voice conversations and tosend faxes to remote locations. For making voice calls, a local systemis dialed via computer access or regular phone which prompts the usersfor the called party number or identification and then connects them tothe called party over the Internet or other data network, such as byconnecting them via a node through a local call or through othernetworks. For example, a calling party may access a node that convertsthe transmission into data to support the network that it chooses. Forinstance, it may connect to another node that converts the transmissioninto voice and then connects the communication into a local call to thecalled party with the called party node being operated by an independentservice provider located elsewhere such as in another country. Ofcourse, the connection takes place only after authorization is receivedto complete the local call.

For sending faxes, the calling party sends a fax into a central localnode and the fax is then forwarded to the called party over the Internetor other data network. The fax may be sent in real time or as a storeand a forward mode for later sending as part of a subsequent batchtransmission, depending upon the preferences of the calling party.

The present invention envisions the option of using a singlecommunication device, such as a multimedia laptop computer, to initiateand receive all forms of communication by contacting a node or beingcontacted by a node in accordance with the invention and providing itwith an identification access address and a called party access address,phone number or other type of identity code and any preferencesconcerning the transmission, such as level of quality of transmission,service providers, time of cost, transmission (e.g., real time or storeand forward later), security, encryption, etc.

Transparent to the calling party that is using the laptop, the nodetakes care of all further action such as tracking down the called party,handling financial billing and obtaining authorization for completingtransactions via individual remote service providers, determining thepreferred path to route communications even if over otherwiseincompatible networks by converting the transmissions accordingly,checking the level of quality of transmission and making sure thetransmission satisfies preferences.

In addition to having access to a data network, the laptop may haveappropriate software/hardware that give it access to a cellular digitalpacket data and, via a built-in fax modem, to a phone network. Thus, thelaptop may be in contact with the node through any of these differentcommunication networks and communicate over any of these communicationnetworks as well, including performing two way voice calls.

Other applications of the invention concern transmissions throughconventional switched frame relay, conventional switched asynchronoustransfer mode and other conventional data networks such as the Internet.Frame relay is an international standard for efficiently handlinghigh-speed data over wide area networks that uses network bandwidth onlywhen there is traffic to send. Asynchronous transfer mode allows usersto combine voice, video and data on a single phone line and operates atup to Gigabyte-per-second speeds in which usable capacity is segmentedinto fixed-size cells each consisting of header and information fieldsallocated to services on demand. The Internet network differs from framerelay switching and asynchronous transfer mode by using transmissioncontrol protocol/Internet program, which is a set of protocols developedby the Department of Defense to link dissimilar computers across avariety of other networks and protocols.

Referring to FIG. 2, several remote nodes 50, 52, 54 are shown on theInternet backbone 56. Each remote node has a telephone server 60 and anInternet server 62, although a common server may be used instead toprovide both functions. The Internet server 62 has access to theInternet backbone 56. Both servers 60, 62 are networked usingtransmission control protocol/Internet program TCP/IP, which is a set ofprotocols that link dissimilar computers across a variety of othernetworks and protocols as conventionally used on local area networks,minicomputers and mainframes, or are networked with a router in the caseof an ATM. Subscribers 64 dial into and are serviced by the telephoneserver 60, which is a computer based machine with conventional voice andfax processing hardware and software, so as to establish a connectionwith one of the remote nodes. Subscribers access the servers by usingany of the conventional off-the-shelf phone and fax machines.

Referring to FIG. 3, a calling party interface 70, operator interface 72and a public switched telephone network PSTN interface 74 are shown. Thesubscriber interface 70 provides subscribers or calling parties withinternet phone and fax service via the Internet Server 62 of the remotenodes (see FIG. 2). The calling party may dial into the subscriberinterface 70 through voice or data lines, for instance, with a computeror laptop. The PSTN interface 74 has lines that are used for inboundcalls and lines that are used for outbound calls. These lines forinbound calls lead to industry standard dialogic hardware or a modemsuch that when a particular number is called, the identification orpassword of the calling party is checked for validity of identity.

If determined to be valid, the calling party is requested to indicatewhat service is desired so that the communication may be routedaccordingly over voice or data networks. The called party is contactedto determine availability for receiving the communication. If available,communication is established over the desired service. Otherwise, ifreal time communication is desired, the calling party is notified thatcontact is unavailable.

If store and forward is the desired method of communication, then thecalled party is monitored until contact becomes available, at which timethe communication may be transmitted. A store and forward typecommunication is one in which a desired communication, such as atelecopier transmission, is stored until it may be sent in accordancewith other criteria, such as in batch format at off peak rates.

Voice processing entails call processing and content processing. Callprocessing involves physically moving the call around such as throughswitching. Content processing involves actually interacting with thecall's content, such as digitizing, storing, recognizing, compressing,multiplexing, editing or using it as input to a computer program.

The operator interface 72 includes designated representatives of theservice provider to interact with the system by means of a personalcomputer console to perform essential functions such as subscriberadministration, rate schedule management, billing and systemadministration. These functions are remotely accessible by dial up.

FIG. 4 shows the functional hardware in accordance with the invention.In addition to the previously mentioned fundamental external interfaces,the internal functional blocks that are necessary for the presentinvention include, as represented by blocks in the diagram, a data base76, call management 78, switching, voice and fax messaging 80. Thehorizontal links 82 on either side of the switching and voice messagingblock 80 are voice paths. The remaining links 84 are all data flowpaths.

The data base 76 is a database management system that is used as arepository for subscriber information, rate schedules, call details, andconfiguration information required to operate the system and thefranchise. Switching via block 80 is required to establish voice or faxbetween the source and the called party. Pre-recorded audio messages areplayed back onto a voice pathway by voice messaging for purposes ofgreeting, indicating normal call setup progress, and checking systemload status, subscriber account status, and error calculations. Voicemessaging refers to a small set of system wide messages and not toarbitrary voice mail messages.

Calls originating from the PSTN interface side are detected by theswitching voice messaging block 80, which also communicates with callmanagement 78 to establish a link with the called party node via theInternet server 62 of FIG. 2 or a voice or data line and to determinewhich message to playback if any. The call management 78 handles callset up requests from either the subscriber interface 70 side or PSTNinterface 74 side to issue call set up commands to the subscriberinterface 70 and to the switching voice messaging 80. It maintainsstatus information on the subscriber interface and PSTN lines. The callmanagement 78 is configurable to verify credit availability beforesetting up a call with other nodes if necessary, and monitor the call toissue voice messaging and call termination commands upon creditdepletion. It handles call take down situations by recording call detailinformation in the database for eventual billing purposes and issuingrelevant commands directly to subscriber interface 70.

For establishing a call, the following steps may take place:

The dialogic hardware answers the call. The switching voice messaging 80sends a message to the answered call via the voice processing unitrequesting entry of a called party access number, which after its entryis received and stored. The call management 78 checks the data base 76for the user's billing status. If invalid, the voice processing unitplays a message and the call is disconnected. Otherwise, for validcallers, the call management 78 initiates the subscriber interface 70 tosend a request packet over the Internet other data or voice line; therequest packet consists of the called party number or identification andmay include an authorization code.

Upon receipt of the packet at a remote central local node, the remotecentral local node will dial the called party number or enter itsaddress, perform a call analysis and send the result back to thesubscriber interface at the origination node. Call management 78 checksthe analysis result. If a connection link was established, then the callbegins. Otherwise, the switching voice messaging 80 prompts the user viathe voice processing unit with a message and options, such as dialanother number or leave a message in a voice mailbox. Upon completion ofthe call, billing information will be stored in the data base 76 forfurther processing by the operator interface 72.

FIG. 5 illustrates a technique for gaining access to a greater number oftelecommunication networks. The normal transmission from an accessdevice is intercepted by an intercept device, which routes thetransmission to a central local node. At the central local node, aninvestigation is made as to what route is available for the specificservice.

After determining which route is available, the central local nodedetermines all available nodes that can provide such a service for thecalled party end. The central local node then selects a specificavailable node based on considerations such as cost, line quality andsecurity and priority. The central local node checks with an internaldata base to determine the available networks at the called party end,the identity of the service providers who provide those networks acrossdifferent nodes, and the different transmission costs associated withcustomer defined criteria. The network access devices supported at thecalled party end could be a telecopier, telex, voice telephone, cellularphone, radio phone, data entry terminal, etc. (different types ofcommunication access devices). Transmission costs associated withcustomer defined criteria include customer preference for particulartypes of networks, encryption security, and/or priority of transmissionsuch as transmit in real time or in a store and forward format asdefined in the customer's message.

A software defined network may be used to maintain quality (e.g., upondetection of degradation in quality, the bandwidth of the transmissionmay be widened in accordance with or prioritization of transmissioninstructions). If data packets do not arrive quick enough, then qualitymay be enhanced by increasing the bandwidth within predeterminedbandwidth parameters on account of other voice data users.

Another embodiment of the application of this invention concernssecurity. A calling party may prefer that the transmission take placeover a secure, dedicated line, but does not care about the route takenby the acknowledgment or reply to the transmission. As a result, theacknowledgement or reply may be routing over non-dedicated lines andthrough any communication networks, even from among selected networks ofthe calling party's choosing. For instance, the calling party may wantthe acknowledgement or reply to be routed over either cellular orcomputer network services.

In accordance with the invention, such customer preferences may be foundin the data base associated with the calling party and interpreted bythe central local nodes. The central local nodes then instruct nodesresponsible for the routing back of the reply or acknowledgement tofollow the desired preference.

Another example of the application of this invention relates to acustomer's preference that a telecopier message be transmittedimmediately instead of in delayed batch format or vice versa. Thetelecopier message is sent to a central local node (at the origin).After initializing the system, i.e., setting a carrier default 90,checking customer preferences for an operator of a service provider 92and checking customer preference for selecting the desired service 94,the central local node determines 96 if there are any more central localnodes (CLN) from a least cost routing (LCR) table, which contains a listof central local nodes connected with service providers of differentnetworks and their costs for providing service.

If there are more central local nodes, the next one is selected 98. Adetermination 100 is made as to whether peak or off peak rates apply bybasing it on the current time. Reference to a data base table 102 may bemade to determine the average call length of service to the location bythe customer to help figure out the most cost efficient route based onhistory of usage. A least cost routing comparison 104 is made todetermine whether the new central local node's connection to the serviceprovider offers the more favorable rate based on the average length ofcommunication that what was being offered through the previouslyconsidered central local node. If better, the newly considered centrallocal node (and its associated service provider) is selected. If worse,the previously selected central local node (and its associated serviceprovider) will remain selected.

This process is repeated 108 for each central local node and therebyeach service provider. When done, the format of the call, theappropriate service provider, network and time of day are selected forsending the transmission to the selected central local node 110 and thebilling information is updated 112.

By selecting the appropriate network, it may be ascertained that it isless expensive to transmit the telecopier message in digital form over adata network than to transmit the telecopier message in voice callbackformat through the long distance carriers. Thus, the data network may bethe network of choice for purposes of selecting the least cost betweennodes. On the other hand, the central local node should give priority tothe customer's preferences, which could mean that the transmission berouted through the most secure route which may not be the data network.Instead, a secure transmission would be through a different routing andwould result in an increase in transmission cost.

FIG. 6 shows a flow chart for establishing a synchronized connection ofboth call legs, that is, synchronizing the completion of callback andcalled party communications by selecting specific system time and speedof callback time. A user is allowed to stay on a line or hang up to waitfor a callback while the routing unit time the completion of bothcommunications from the routing unit to the calling party access numberand the called party access number and ensures that both occursimultaneously or according to cost efficiency of transaction. Therouting unit checks an internal data base to determine how long to waitbefore commencement of opening communications with both so as to ensuresynchronization of the callback and called party calls. This may bebased on the historical performance of placing the callback and calledparty calls or placing a data call or tracking down a party.

A routing unit initially receives the first leg 120 (location, city,destination) of the calling party and the second leg 122 (location,city, destination) of the called party and then looks up in a statuscall back table in memory 124 for the least estimated connection time.The difference 126 is calculated between the connection times of the twolegs and the leg with the longer connection time needed is dialed 128. Atimer 130 is set to the difference and counts down to zero 132.

When the counting down is completed, the timer triggers the actuation toopen communication with the leg with the shorter connection time 134 toestablish the call 136. If a called party is to be called that is notfound in the status call back table in memory 124, then the actuation toopen communication takes place in the sequence of the called party legfirst and then the other leg. The average connection times are thenstored in the table in memory 124 for future synchronization of the twolegs. The table is continuously updated every time calls are placed. Theaverage connection times for both legs and the service providers thatare available for connection to the called party location and city codesare stored in the table for retrieval upon demand.

Another aspect of the invention concerns blocking the channels so noother incoming calls can interrupt during the time the routing unitperforms the callback and called party calls. The intercept unit onlyreleases the blocked channel a few seconds before the time specified inthe history of completion of the callback and called party calls.Alternatively, the time delay may be based on a fixed minimum timeperiod common for placing those types of calls. For instance, if a longdistance call takes 10 to 15 seconds depending upon the called party,the time delay period that is set could always be 9 or 10 seconds underthe time required to make that call. Thus, there is only a short timeperiod during which an incoming call can interrupt the routing unit'ssynchronization of the completion of the callback and called partycalls. It should be noted that the data base checked by the interceptunit may not be the same data base checked by the routing unit, althoughtheir contents could be the same. Such call blocking features arecommercially available from VoiceSmart in software and hardware underthe designation transparent local node (TLN) and hotel local node (HLN).By blocking such incoming calls, service providers no longer face therisk of bearing the expense of completing the second callback leg if thefirst callback leg becomes busy due to an incoming call.

FIGS. 7A-7G exemplify different techniques for efficient routingcommunications in accordance with the invention. Access devices 150 and156 (FIGS. 7A-7G) and nodes 152 (FIGS. 7A-7C, 7E-7F), 154 (FIGS. 7A-7G)and 160 (FIG. 7C) on a network are shown, but each node may be locatedin the same or different geographical region or country. The accessdevice 150 may have an intercept capability to render the ensuingrouting connections transparent to the users. Node 158 (FIG. 7B)represents an access device on a different network. For purposes ofexample, links 170 (FIGS. 7A-7G) and 174 (FIGS. 7A-7G) may be consideredvoice transmission lines and links 172 (FIGS. 7A-7C, 7F) and 173 (FIG.7D) may be considered data transmission lines. Link 176 (FIG. 7B) may bea paging or cellular line. Links 178 (FIGS. 7E and 7G) and 180 (FIG. 7E)may be data lines. Links 182, 184 and 186 (FIG. 7F) may also be datalines. Each node may perform the function of terminating the call, suchas when authorization is not forthcoming for carrying out thetransaction.

FIG. 7A shows nodes 152 and 154 effecting communication with theirrespective access devices 150 and 156, as would be done for simultaneouscallback. Initially, the initiator access device 150, transmits itsidentification and that of the other access device 156 to node 152. Node152 requests node 154 to make an inquiry on the availability of accessdevice 156. If available, then callback is made over respective links170, 174, preferably for simultaneous communication. The two callbacksare bridged over link 172. Nodes 152 and 154 convert voice transmissionsinto data transmission and vice versa so that data transmissions travelbetween nodes 152 and 154 and voice transmissions travel from the accessdevices to the associated nodes 152, 154. Links 170, 172 and 174 mayhandle voice or data communications.

FIG. 7B works in the same way as in FIG. 7A, except that node 154 pagesthe called party via paging device 158 over paging network 176. Oncepaged, the called party calls node 154 through access device 156 andcommunication is established by bridging over link 172. During theinterim between paging of the called party and the calling to the node154 by the called party through the access device 154, the access device150 may either be waiting for communication to be established with node152 or be called back by node 152 after node 152 is advised that theaccess device 156 has contacted the node 154.

FIG. 7C is the same as that of FIG. 7A, except that an additional node160 between nodes 152, 154 is shown to illustrate that the routingbetween nodes 152, 154 may not be direct, and also showing that accessdevice 150 is communicating directly with node 152 rather than as aresult of callback as in FIG. 7A and using two different data links 172and 173.

FIG. 7D shows that communication may be through a single node 154,rather than through two nodes as in FIGS. 7A-7C as in case where accessdevice 150 is a computer that has direct access to data link 172.

FIG. 7E shows also that communication may be through a single node 152,ratter than through two nodes, but also shows that such communication isestablished after access device 150 communications with node 154 saythrough E-mail that communication is desired with access device 156.Instead of routing the transmission through node 154, node 154 signalsto node 152 to make contact with access devices 150 and 156 directly.

FIG. 7F shows a callback type of arrangement in which a request forestablishing communication from access device 150 to access device 156is made through one kind of network, but the actual callback is doneover a different kind of network, although both kinds of networks sharethe same nodes 152, 154. As an example, the request could be through adata network 182, 184, 186 and the callback could be through two voicelinks 170, 174 from respective access devices 150, 156, with the twovoice links being bridged by a data link 172. The nodes 152, 154 convertvoice transmissions into data transmissions and vice versa as desired.

FIG. 7G is the same as FIG. 7E, except that node 154 also performs thefunction of node 152 in FIG. 7E and thereby routes the transmissionsthrough itself. In this case, a request for establishing communicationwith access device 156 from access device 150 is effected over a datalink 178, such as through E-mail. In response, node 154 calls bothaccess devices 150, 156, preferably so that each is contactedsimultaneously, over a different network such as over voice lines 170,174.

In each of these examples of FIGS. 7A-7G, billing is handled transparentto the parties using the access devices 150, 156. Each of the nodes arein contact with a central node (or network of central nodes) that mustclear the transaction before the termination nodes take action through aglobal authorizer. Once the transaction cleared, an authorization codeis provided to the node. The authorization code may either be forwardedto some other node at the time a request is made to establishcommunication or may be in response for such from that other node.

The central node, which includes the global authorizer, would check thetotal open credit or debit for the originating node, check for patternsof fraud, check for rights to terminate communication early based onavailable credit, and check the calling party credit standings withthird parties. Based on the results of such checking, the globalauthorizer of the central node either approves or disapproves of theproposed transaction. Once the transaction is complete, the noderesponsible communicates such completion to the central node, which thenupdates account information accordingly. If a node is being shut down,the central node also communicates such shutdown to all other nodes sothat they remove the shutdown node from the stored routing table ofavailable nodes.

FIG. 8 shows a central local node A interacting with a calling partyaccess device interface and a global network of high capacity datanetworks. Access devices may communicate with central local nodesdirectly or through intercept devices which direct the communication tothe central local node. Access devices are exemplified by telephones,pagers, cellular phones, laptops, facsimile machines, multimediacomputer workstations, etc.

The subscriber access device interface includes communication networkssuch as digital and analog telephone, paging and cellular, and data. Thecentral local node includes an authorizer, converters for eachcommunication network, a main processor and router, a main data base,compression and coding system and decompressing and decoding system. Theglobal networks of high capacity data networks include the internet,frame relay and digital and analog voice lines.

The authorizer is responsible for providing clearing transactions toprovide authorization for making communication. The authorizer checkswith a main data base within the central local node to determine whetherthe subscriber's credit is good and to what extent to ensure thatservice providers get paid. The data base may contain a history of thesubscriber's usage and outstanding unpaid balance and other informationrelating to credit history. The main data base's information may beupdated from information in other nodal data bases and vice versa,including that of the central node, which should contain the mostcurrent information and whose global authorizer may be responsible forauthorizing all transactions in advance. By the same process, the globalauthorizer can check on the creditworthiness of service providers if theservice providers will be responsible for paying each other.

The converters convert the form of the communication to suit theparticular network over which the communication will be routed, e.g.,voice into data, etc. The main processor and router is responsible forchecking with the main data base to determine which service providersand communication networks to utilize and to access circuitry tocompress or decompress the communications as needed and to accesscircuitry to code or decode the communications for security purposes.

The main processor and router route the communications throughappropriate converters if necessary to suit the network being utilizedfor routing, i.e., internet, frame relay and ATM, or digital and analogvoice lines. The main processor and router also direct the communicationto the ultimate destination, i.e., access devices of the called party.In so doing, other central local nodes B or C may be used for part ofthe routing or else route directly to the access devices via theassociated intercept if any for the access device. These interceptdevices are also for directing communications.

Converters are available conventionally, such as Texas Instrumentdigital signal processors which convert voice to data and vice versa.Intercepts are available from VoiceSmart by ordering TLN or HLN and areavailable conventional from phone companies. The intercept may be partof or separate from the access devices. The intercept evaluates whethersavings may be achieved by routing to a node and, if so, routes thetransmission to the central local node A of FIG. 8 and identifies thesubscriber and called party or service type.

The node receiving the routing from the intercept polls other nodes totrace the called party number or identification address. In this manner,the main processor and router of the node serves as an interrogator thatinterrogates the availability of the called party number oridentification address. The node accesses a main data bank to check thecommunication network, call format and user preferences to determine thebest connection between locations 150 and 156 of FIGS. 7A-7G. The node,through its authorizer, checks whether completing the routing of thetransmission is authorized and obtains an authorization code from theglobal authorizer at the central node. The node converts thetransmission if necessary for compatibility and records billinginformation to ensure proper end user billing. Also, the node updatesuser statistical usage and access for future use. Each of these tasksthat are performed by the node are carried out in a manner that istransparent to the calling party.

FIG. 9 is a variation of that of FIG. 1, but shares the same componentsthat are identified by the same reference numerals. Additional two-waydirect link connections 46A, 46B, 46C, 46D and 46E are included. Forinstance, one route for sending a request as to availability may be fromthe calling party access device 12 to the local access node 18 eitherdirectly or through the intercept 16 and then directly to either thecommunications network 10, the data network 20 or another network 200such as a cellular network, ATM, and/or frame relay. The centralswitching unit 22 then receives the request from the network as toavailability to check on the availability of the called party accessdevice 14. Once the availability becomes known, an appropriate signalmay be sent directly back to the central local node 18 eitherbacktracking through the same route or through the second central localnode 24 to either the communications network 10 or the data network 20to thereafter reach the local access node 18. Note that the secondcentral local node 24 may be considered a local access node for thecalled party access device 14.

A central local node global authorizer 220 is shown to which permissionmust be obtained by confirming authorization requests before routingconnections between the calling and called parties may take place. Thisglobal authorizer 220 may be part of the central node to which all thecentral local nodes are in communication. In FIG. 8, for instance, theconnection from the main data base to the other node data bases wouldinclude connection with the central node and thereby with this globalauthorizer. Authorization requests would be sent to the globalauthorizer 220 via the applicable one or more of the networks 10, 20,200.

All the routing paths of FIGS. 7A to 7G are applicable to the blockdiagram of FIG. 9. Also, the representation of the interaction of thecentral local node with various networks as shown in FIG. 8 isapplicable to FIGS. 1 and 9.

FIG. 9 shows some links as bidirectional lines and others as twosingle-directional lines in opposite directions. This was done forconvenience and is in no way intended to be limited to one form or theother. Routes may be through any path available, except that the routingthrough links 53A, 53B and 53C only arises if calling location 48communicates in a manner compatible with the applicable one of thenetworks 10, 20 or 200. Otherwise, routing will have to be done throughthe central local node 18.

If the calling party location uses a laptop computer and thus connectsdirectly with the data network 20 and bypasses the central local node,the path of communication would still pass through either the centraloffice 22 or the central local node 24 before reaching the called partyaccess device 14. At the central office 22 or the central local node 24,therefore, the applicable billing information may be recorded.

While intercept 16 and central local node 18 are shown as separateunits, they may be combined together. Similarly, while the centraloffice 22 and central local node 24 are shown as separate units, theymay be combined together. By being combined together, a unitary devicewould provide the functions of both.

While the foregoing description and drawings represent the preferredembodiments of the present invention, it will be understood that variouschanges and modifications may be made without departing from the spiritand scope of the present invention.

What is claimed is:
 1. A method of use of a communication network,comprising the steps of: (a) receiving a calling party access number anda called party access number at a control location; (b) determininngwhich service providers service connections between said calling partyaccess number and said called party access number; (c) comparing saidservice providers based on criteria; (d) selecting appropriate ones ofsaid service providers that satisfy said criteria as a result of thestep of comparing; (e) instructing said selected service providers toprovide service between said connections for establishing contactbetween said calling party access number and said called party accessnumber; (f) receiving a status signal at said control locationindicating if said called party access number is available for taking anincoming communication; (g) if said status signal indicates an availablestatus, initiating a first communication from said control location tosaid called party access number and a second communication from saidcontrol location to said calling party access number; (h) bridging saidfirst and second communications.
 2. A method as in claim 1, wherein saidcriteria includes any one of transmission quality, levels of security oftransmission, cost for service by said service providers including peakand off-peak rates, types of communication routes available between saidcalling party access number and said called party, and historical recordof quality of service provided by said service providers.
 3. A method asin claim 1, wherein the steps of determining, comparing, selecting andinstructing are carried out transparent to the calling party whosecalling party access number was received.
 4. A method of use of acommunication network, comprising the steps of: (a) receiving a callingparty access number and a called party access number at a controllocation; (b) receiving a status signal at said control locationindicating if said called party access number is available for taking anincoming communication; (c) determining an expected time to communicatewith the called party access number upon initiating a firstcommunication thereto and determining the expected time to communicatewith the calling party access number upon initiating a secondcommunication thereto; (d) if said status signal indicates an availablestatus, initiating one of a first communication from said controllocation to said called party access number and a second communicationfrom said control location to said calling party access number towhichever of the first and second communication has the larger of saidexpected time before communication; (e) waiting for a time period toelapse that lasts at most as long as an amount of time equal to adifference in time between communication with the calling party accessnumber and the called party access number; and (f) thereafter placingwhichever of the other of the first and second calls has the shorter ofsaid expected time before communication; (g) bridging said first andsecond communications.
 5. A method as in claim 4, further comprising thestep of blocking any incoming calls for a duration that lasts up to saiddifference in time.
 6. A method as in claim 4, wherein the step ofwaiting is carried out based on checking with memory for information onthe difference in time between communicating with said calling partyaccess number and said called party access number, further comprisingthe step of sensing times when calls to said called party access numberand to said calling party access number actually went through andupdating said information in the memory based on results from thesensing.
 7. An apparatus for use in a communication network, comprisingan intercept that selects one route from among a plurality of differentavailable routes in accordance with criteria pertaining to the routes,each of the routes passing through a control location and between acalling party access number and a called party access number, theintercept selecting the one route in a manner transparent to users ofthe calling party access number and the called party access number, theintercept further passing information with the control location in amanner transparent to users of the calling party access number and thecalled party access number, the intercept evaluating the informationpassed from the control location in a manner transparent to users of thecalling party access number and the called party access number toascertain whether to bridge calls through the selected one route betweenthe calling party access number and the called party access number and,if so, instructing that calls between the calling party access numberand the called party access number be bridged through the selected oneroute; wherein said intercept determines which service providers serviceconnections between said calling party access number and said calledparty access number and compares said service providers based oncriteria to select appropriate ones of said service providers thatsatisfy said criteria and to instruct said appropriate ones of selectedservice providers to provide instructions to effect said connections forestablishing communication between said calling party access number andsaid called party access number.
 8. A method of use of a communicationnetwork, comprising the steps of: (a) receiving a calling party accessnumber and a called party access number, (b) in response to step (a),checking a status on each of a plurality of communication accesslocations each associated with said called party access number todetermine which is accessible to reach said called party access number;wherein said communication access locations are each in connection witha different form of communication networks (c) based on the result ofstep (b), identifying the communication access location that wasdetermined as being accessible steps (a) to (c) being carried out in amanner that is transparent to users of the calling party access numberand the called party access number; (d) checking for authorization toallow communications through at least the identified access location;(e) routing, in response to said authorization being present, saidcommunications through at least said identified access location; and (f)converting said communications through at least said identified accesslocation from one form into another, said communication networks beingincompatible with each other in an absence of said conversion.
 9. Amethod of use of a communication network, comprising the steps of: (a)receiving a calling party access number and a called party accessnumber, (b) in response to step (a), checking a status on each of aplurality of communication access locations each associated with saidcalled party access number to determine which is accessible to reachsaid called party access number; (c) based on the result of step (b),identifying the communication access location that was determined asbeing accessible and making an indication that communication may becomeestablished with the called party access number, steps (a) to (c) beingcarried out in a manner that is transparent to users of the callingparty access number and the called party access number; (d) commencingtransmission of communications through a route to the identified one ofsaid communication access locations based on the indication; (e)ascertaining a quality of the transmission over the route as saidcommunications traverse said route; and (f) before completing thetransmission commenced in step (d), changing the route over which thecommunications are transmitted in response to step (e) upon ascertainingthat said quality degraded below a level of acceptability.
 10. Anapparatus for use in a communication network, comprising: a receiver ofa called party access number; a checking device responsive to thereceiver to check a status on each of a plurality of communicationaccess locations each associated with said called party access number todetermine which is suitable for reaching said called party accessnumber; an identifying device responsive to the checking device toidentify the communication access location that was determined as beingaccessible and making an indication that communication may becomeestablished; a commencing device responsive to said identifying deviceidentifying said communication access location accessible for commencingtransmission of communications over a route to said identifiedcommunication access location; a quality checking device that ascertainsa quality of the transmission over the route as said communicationstraverse said route; and a route changer that changes the route overwhich the communications are transmitted in response to said qualitychecking device finding said quality degraded below a level ofacceptability.
 11. An apparatus for use in a communication network,comprising: a receiver of a called party access number; a checkingdevice responsive to the receiver to check a status on each of aplurality of communication access locations each associated with saidcalled party access number to determine which is suitable for reachingsaid called party access number, wherein said communication accesslocations are each in connection with a different form of communicationnetwork; an identifying device responsive to the checking device toidentify the communication access location that was determined as beingaccessible and making an indication that communication may becomeestablished; an authorizer checking for authorization to allowcommunications through at least one of said access locations; a routerresponsive to said authorization being present to route saidcommunications through at least an authorized one of said accesslocations; and a converter responsive to said indication for making aconversion of said communications through at least said authorized oneof said communication access locations from one form into another, saidcommunication networks being incompatible with each other in an absenceof said conversion.
 12. An apparatus as in claim 11, wherein saidconverter includes any one of compression circuitry and samplingcircuitry.
 13. An apparatus as in claim 11, wherein said checking deviceis part of a processor, further comprising encoding and decodingcircuitry, said processor accessing said encoding and decoding circuitryto selectively code and decode said communication as appropriate.
 14. Amethod of use of a communication network, comprising the steps of: (a)selecting one route with an intercept from among a plurality ofdifferent available routes in accordance with criteria pertaining to theroutes, each of the routes passing through a control location andbetween a calling party access number and a called party access number,the step of selecting being carried out in a manner transparent to usersof the calling party access number and the called party access number,the step of selecting comprising the step of: (1) determining whichservice providers service connections between said calling party accessnumber and said called party access number; (2) comparing said serviceproviders based on criteria; and (3) selecting appropriate ones of saidservice providers that satisfy said criteria as a result of the step ofcomparing; (b) passing information between the intercept and the controllocation in a manner transparent to users of the calling party accessnumber and the called party access number; (c) evaluating saidinformation in a manner transparent to users of the calling party accessnumber and the called party access number so as to determine whether tobridge calls between the calling party access number and the calledparty access number through the selected route; (d) in response to step(c) determining that the calls between the calling party access numberand the called party access number are to be bridged through theselected route and instructing that the calls between the calling partyaccess number and the called party access number be bridged through theselected one route, the step of instructing comprising the step ofinstructing said selected service providers to provide service betweensaid connections for establishing contact between said calling partyaccess number and said called party access number.
 15. A method of useof a communication network, comprising the steps of: (a) selecting oneroute with an intercept from among a plurality of different availableroutes in accordance with criteria pertaining to the routes, each of theroutes passing through a control location and between a calling partyaccess number and a called party access number, the step of selectingbeing carried out in a manner transparent to users of the calling partyaccess number and the called party access number; (b) passinginformation between the intercept and the control location in a mannertransparent to users of the calling party access number and the calledparty access number; (c) evaluating said information in a mannertransparent to users of the calling party access number and the calledparty access number so as to determine whether to bridge calls betweenthe calling party access number and the called party access numberthrough the selected route; (d) in response to step (c) determining thatthe calls between the calling party access number and the called partyaccess number are to be bridged through the selected route, instructingthat the calls between the calling party access number and the calledparty access number be bridged through the selected one route; (e)determining an expected time to communicate with the called party accessnumber upon placing a first call thereto and determining the expectedtime to communicate with the calling party access number upon placing asecond call thereto; (f) in response to completion of the step ofdetermining, initially placing whichever of the first and second callshas the longer of said expected time before communication; (g) waitingfor a time period to elapse that lasts at most as long as saiddifference in time between communication with the calling party accessnumber and the called party access number; and (h) thereafter placingwhichever of the other of the first and second calls has the shorter ofsaid expected time before communication.
 16. A method of use of acommunication network, comprising the steps of: (a) receiving a callingparty access number and a called party access number at a controllocation; (b) determining which service providers service connectionsbetween said calling party access number and said called party accessnumber; (c) comparing said service providers based on criteria; (d)selecting an appropriate service provider that satisfies said criteriaas a result of the step of comparing; (e) receiving a status signal atsaid control location indicating if said called party access number isavailable for taking an incoming communication; (f) if said statussignal indicates an available status, initiating a first communicationfrom said control location to said called party access number and asecond communication from said control location to said calling partyaccess number at least one of the first or second communications beingcarried by the selected service provider; and (g) connecting said firstand second communications.